package com.ving.config;

import org.aspectj.lang.annotation.*;
import org.springframework.stereotype.Component;

/**
 * 切面 一定要给spring 管理
 */
@Component
@Aspect
public class VingAspectJ {

  /**
   * 切点 为什么切点要声明在一个方法上?目的是为了将注解写在上面而已 pointcut是连接点的集合（就是方法的集合）
   */
  @Pointcut("execution(* com.ving.dao.*.*(..))")
  public void pointCut() {

  }

  /**
   * 通知---》配置切点
   */
  @After("com.ving.config.VingAspectJ.pointCut()")
  public void after() {
    System.out.println("after");
  }

  @Before("com.ving.config.VingAspectJ.pointCut()")
  public void before() {
    System.out.println("before");
  }

//    @Around("pointCut()")
//    public void round(){
//        System.out.println("s1");
//
//    }
}
